package com.rainng.coursesystem.util;


import com.spire.doc.*;
import com.spire.doc.documents.*;

import com.spire.doc.fields.TextRange;
import com.spire.doc.formatting.ParagraphFormat;

public class wpsDocx {

    public static final String BOOKMARK_START_TAG = "w:bookmarkStart";
    /**
     * word书签结束部分
     */
    public static final String BOOKMARK_END_TAG = "w:bookmarkEnd";


    public static void main(String[] args)   {


        //加载包含书签的Word文档

        Document doc2 = new Document();

        doc2.loadFromFile("D://docx//营运货车+05-1营运货车+操纵稳定性检验记录+HWJC-549-1-20211009.docx");

        updataDocxDataByBookTag(doc2);
        //获取书签集合
        //获取书签
        BookmarksNavigator bookmarksNavigator = new BookmarksNavigator(doc2);
        bookmarksNavigator.moveToBookmark("zoulu1");

        try{
            //获取书签文本
            TextBodyPart textBodyPart = bookmarksNavigator.getBookmarkContent();
            //创建String变量
            String text = "";

            //遍历书签内容的项目
            for (Object item : textBodyPart.getBodyItems()) {

                //判断项目是否为段落
                if (item instanceof Paragraph) {
                    Paragraph paragraph = (Paragraph) item;

                    //遍历段落中的子对象
                    for (Object childObj : paragraph.getChildObjects()) {

                        //判断子对象是否为TextRange
                        if (childObj instanceof TextRange) {

                            //获取TextRange中的文本
                            TextRange textRange = (TextRange) childObj;
                            text = text + textRange.getText();
                            String CC="";
                        }
                    }
                }
            }
        }catch(Exception ex){

        }
    }
    public static void updataDocxDataByBookTag(Document document) {
        //定位到书签
        BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(document);
        //移除
        bookmarkNavigator.moveToBookmark("code22");
        String title = "□";
        //使用文本替换原书签的内容, false表示不保留原来的格式
        bookmarkNavigator.replaceBookmarkContent(title, false);

        bookmarkNavigator.moveToBookmark("code23");
        //使用文本替换原书签的内容, false表示不保留原来的格式
        bookmarkNavigator.replaceBookmarkContent("hhhhhhhhhhhhhhhhhhhhhhhhhh", false);

        bookmarkNavigator.moveToBookmark("code24");
        //使用文本替换原书签的内容, false表示不保留原来的格式
        bookmarkNavigator.replaceBookmarkContent("hhhhhhhhhhhggggggggggggggggggghhhhhhhhhhhhhhh", false);

        document.saveToFile("D://新文档路径.docx", FileFormat.Docx_2013);
        document.dispose();
    }
}




